#include<bits/stdc++.h>
using namespace std;
#define all(x) (x).begin(),(x).end()
#define rall(x) (x).rbegin(),(x).rend()
const int N = 1e3 + 10;
#define INF 0x3f3f3f3f;
typedef long long int ll;
#define close(); std::ios::sync_with_stdio(false);cin.tie(0),cout.tie(0);
//----------------------------------------------------------------------------/
int n, h;
int a[N];
void solve()
{
    cin >> n >> h;

    for(int i = 1; i <= n; i++) cin >> a[i];

    sort(a + 1, a + 1 + n);

    int sum = 0;
    // for(int i=n;i>=1;i--)
    // {
    // 	sum+=a[i];
    // 	if(sum>=h)
    // 	{
    // 		cout<<n-i+1<<'\n';
    // 		return ;
    // 	}
    // }

    int ans = (h / (a[n] + a[n - 1])) * 2;
    //h % (a[n] + a[n - 1]) > a[n] &&h % (a[n] + a[n - 1]) > 0 ? ans += 2 : ans += 1;
     int cur=h%(a[n]+a[n-1]);
     if(cur>a[n]) ans+=2;
     if(cur<=a[n]&&cur>0) ans++;
    cout << ans << '\n';



}

int main()
{
    close();
    int T;
    cin >> T;
    while (T--) solve();
    return 0;
}
//ai为第i见武器的伤害
//不能两次访问相同的武器